草庐IT

Android isScreenOn Nullpointer异常

全部标签

java - 在正文异常 spring rest 中添加新字段

我想在我的Restspringboot应用程序中处理异常。我知道使用@ControllerAdvice和ResponseEntity我可以返回一个自定义对象来表示我的错误,但我想要的是向现有异常的主体添加一个新字段,仅此而已。我创建了一个继承RuntimeException的自定义异常,它带有一个额外的属性,一个字符串列表:@ResponseStatus(HttpStatus.CONFLICT)publicclassCustomExceptionextendsRuntimeException{privateListerrors=newArrayList();publicCustomEx

java - 线程主java.lang.exceptionininitializerError中的异常在没有hadoop的情况下安装spark

我正在尝试安装spark2.3.0,更具体地说,它是spark-2.3.0-bin-hadoppo2.7'D:\spark\bin'已经添加到环境变量PATH中。同时,安装了JDK-10。未安装Hadoop。但是谷歌说spark可以在没有hadoop的情况下工作。这是错误信息C:\Users\a>spark-shellExceptioninthread"main"java.lang.ExceptionInInitializerErroratorg.apache.hadoop.util.StringUtils.(StringUtils.java:80)atorg.apache.hadoo

java - 有没有办法强制 JUnit 在任何未经检查的异常上失败,即使被吞噬了

我正在使用JUnit为没有单元测试的遗留代码编写一些更高级别的测试。大部分代码“吞噬”了各种未经检查的异常,如NullPointerExceptions(例如,仅打印堆栈跟踪并返回null)。因此,即使在较低级别代码的各个点存在级联灾难,单元测试也可以通过。有没有办法让测试在第一个未经检查的异常上失败,即使它们被吞没了?我能想到的唯一替代方法是编写一个自定义JUnit包装器来重定向System.err,然后分析输出中的异常。 最佳答案 如果您在IDE的调试器中执行测试,您可以将IDE配置为在抛出异常时中断。

长抛出异常列表的java风格

用于格式化长throws列表的Java样式是什么?假设我有这个:publicvoidsome()throwsIOException,ClassNotFoundException,NoSuchMethodException,InvocationTargetException,IllegalAccessException{}应该是:publicvoidsome()throwsIOException,ClassNotFoundException,NoSuchMethodException,InvocationTargetException,IllegalAccessException{},p

Java unchecked/checked 异常说明

我一直在阅读有关未检查和已检查问题的信息,没有任何在线资源真正清楚地说明两者的区别以及何时使用两者。据我了解,它们都是在运行时抛出的,它们都表示超出逻辑预期范围的程序状态,但必须显式捕获已检查的异常,而未检查的则不会。我的问题是,为了论证的缘故,假设我有一个除以两个数字的方法doubledivide(doublenumerator,doubledenominator){returnnumerator/denominator;}和一个需要在某处除法的方法voidfoo(){doublea=divide(b,c);}谁负责检查分母为零的情况,应该检查还是不检查异常(忽略Java的内置除法检

java - 构建缓存失败应该抛出哪个异常?

我有一个包含缓存(Set)的类,缓存是建立在实例化上的。我很困惑如果构建缓存失败(无法连接到数据库或某些数据库)我应该抛出哪个异常/错误。classProvider{publicProvider(){buildCache();}privatevoidbuildCache(){try{this.cache=getDataFromDb();}catch(Exceptionex){thrownew???}}}我想到的一个异常是ExceptionInInitializerError,但javadoc说它是在初始化静态成员时抛出的。我是否应该抛出一个IllegalStateException因为

java - 从另一个正在运行的 Java 应用程序捕获异常

我遇到了一个问题,我有一个程序(不是我写的,是别人写的)我想全天候运行24/7,但有时它会崩溃。通常,这不是问题,因为我可以简单地创建一个进程观察器来检查它是否崩溃,然后在必要时重新启动它。但是,这个特定的程序有时会抛出异常并将其输出到集成到其中的图形界面中。在这种情况下,程序根本不会崩溃。界面保持正常,但实际服务器功能不可用。有什么方法可以从这个过程中拦截这些信息吗? 最佳答案 您想使用JavaVirtualMachineToolsInterface.我无法为您提供捕获异常的代码,但这是可以查看的地方。您必须进行一些侦探工作才能找

java - 声明抛出异常的方法和该异常的子类

声明一个方法抛出异常有意义吗以及此异常的子类,例如IOException和FileNotFoundException?我猜它是为了通过调用方方法以不同方式处理这两个异常。但是,如果方法抛出仅最通用的异常,即IOException,是否可以同时处理这两种异常? 最佳答案 However,isitpossibletohandlebothexceptionsifthemethodthrowsonlythemostgenerici.eIOException?当然。您仍然可以分别捕获它们:try{methodThrowingIOExcepti

java - 写入客户端 channel 时出现异常 java.nio.channels.ClosedChannelException

我使用netty3.5.8创建了一个游戏服务器。起初,从服务器向客户端发送数据没有任何问题。但是当服务器运行一段时间后,向客户端channel写入数据时出现很多异常[java.nio.channels.ClosedChannelException]。以前任何人都得到过这个异常。有什么技巧可以解决这个问题吗?我考虑缓存缓冲区的原因。我的代码示例是这样的:ChannelBufferbff=ChannelBuffers.buffer(18);bff.writeByte(Events.S_SERVER_PUSH);bff.writeByte((byte)0);bff.writeInt(idRo

java - 使用 Mockito 创建新类的实例时如何模拟异常

在一个方法中,我捕获了一个我想模拟的异常。我知道如何使用mock.doSomething()模拟对象以抛出异常,但我需要在类创建自身的新实例时抛出远程异常。transientBicyclebike=null;publicBicyclegetBicycle(){if(bike==null){try{bike=newBicycle(this);}catch(RemoteExceptionex){System.out.println("Nobikesfound");}}returnbike;}我希望能够模拟tryblock中的所有内容,但我不明白您如何模拟新类的创建,具体如下行:bike=n